module.exports = {
  // 部署应用包时的基本路径
  publicPath: process.env.VUE_APP_PUBLIC_PATH,
  // 打包时输出的文件目录
  outputDir: 'dist',
  // 代码保存时是否启用eslint验证
  lintOnSave: process.env.NODE_ENV === 'development',
  // 是否在控制台显示打印位置
  productionSourceMap: process.env.NODE_ENV === 'development',
  // 本地开发相关配置
  devServer: {
    // 端口号
    port: process.env.VUE_APP_PORT,
    // 自动打开网页
    open: true,
    // 反向代理
    proxy: {
      // 标识符
      '/api': {
        // 目标服务器
        target: '',
        // 是否开启跨域
        changeOrigin: true,
        // 重写url
        pathRewrite: { '^/api': '' },
        // 是否代理websockets
        ws: false,
        // 是否请求htps加密网址
        secure: false
      }
    }
  },
  // webpack相关配置
  configureWebpack: config => {
    // 路径别名
    config.resolve.alias = {
      '@': require('path').join(__dirname, 'src')
    }
    // 插件配置
    // config.plugins.push();
    // 区分环境差分配置
    switch (process.env.NODE_ENV) {
      case 'development':
        config.mode = 'development'
        break
      case 'production':
        config.mode = 'production'
        // 打包文件大小配置
        config.performance = {
          maxEntrypointSize: 10000000,
          maxAssetSize: 30000000
        }
        break

      default:
        break
    }
  }
}
